package br.com.sgpv2.service.impostorenda;

import java.util.List;

import br.com.sgpv2.controler.NegocioExeception;
import br.com.sgpv2.entity.impostorenda.ImpostoRenda;

public interface ImpostoRendaService {
	/**
	 * Método que salva uma entidade imposto de renda no banco de dados.
	 */
	void salvar(ImpostoRenda impostoRenda) throws Exception;

	/**
	 * Método que altera uma entidade imposto de renda no banco de dados.
	 */
	void alterar(ImpostoRenda impostoRenda);

	/**
	 * Método que lista todas as entidades imposto de renda do banco de dados.
	 */
	List<ImpostoRenda> listar() throws Exception;

	/**
	 * Método que remove uma entidade imposto de renda no banco de dados.
	 */
	void remover(ImpostoRenda impostoRenda) throws Exception;

	/**
	 * Método que busca uma entidade imposto de renda do banco de dados.
	 */
	ImpostoRenda buscar(Integer pk) throws NegocioExeception;

	/** Método que altera o imposto de renda. */
	void saveOrUpdate(ImpostoRenda impostoRenda);

	/**
	 * Método que consulta todas os impostos de renda por mês e ano.
	 */
	public List<ImpostoRenda> consultarPorMesAno(String mes, String ano);
}
